1. Field of the Invention
The invention relates generally to protocols for communication among hosts in a shared network and more particularly to a protocol for resolving the physical address of a host on a shared network.
2. Description of the Related Art
In large networks which include a multiplicity of hosts that communicate with one another on the network, it frequently is necessary to employ an address resolution protocol to ascertain the address of a target host to which a sending host intends to send information. More specifically, each host in the network ordinarily is assigned a network address which uniquely identifies the host on the network. The network address is assigned by the communication protocol according to a network addressing scheme. In order for a sending host to actually send information to the target host, however, the sending host must ascertain the physical address of the target host. The physical address identifies the target host hardware. Typically, it is represented by the contents of a register on a communication controller of the target host.
One earlier address resolution protocol, for example, uses broadcast packets to resolve the physical address of a host from the network address. Unfortunately, broadcast packets often disturb virtually every host on the network even though information is to be sent only to a single target host. A broadcast packet transmitted onto the network ordinarily is evaluated by every host on the network. Upon receipt of such a broadcast packet, a receiving host responds by interrupting its current activity to determine whether or not the network address included within the broadcast packet matches the respective network address of such receiving host. If there is no match, such receiving host resumes its activity. If there is a match, however, then the receiving host sends out an acknowledge packet to the sending host. The acknowledge packet includes the target host physical address. A disadvantage with the use of broadcast packets is that they often can unnecessarily disturb numerous hosts in an effort to identify a single target host.
One earlier solution to the problem of disruption caused by the use of broadcast packets has been the use of an algorithm which involves storage of the physical address of a target host as part of the communication protocol between a sending host and a target host. By storing the physical address of the target host, that physical address then is available to the sending host at a later time when additional information is to be communicated to the target host. Thus, at such later time the sending host can send the data directly to the target host using the stored physical address without the need to once again transmit broadcast packets onto the network to inquire as to the physical address of the target host.
A shortcoming with such earlier protocols which involve storage of physical addresses has been that the physical address of a target host may change. For example, the target host hardware might be replaced, or the contents of the physical address register might be altered. Thus, the stored physical address may become invalid. A prior solution to this problem was to delete from the memory of the sending host the stored physical address of the target host after a predetermined time interval.
While this earlier solution to the problem of invalid stored physical addresses generally has been acceptable, there have been problems with its use. In particular, this prior practice of deleting the stored physical address after a predetermined time interval can lead to the deletion of physical addresses which are still valid.
Thus, there has been a need for an address resolution protocol which can store the physical address of a target host and which can substantially avoid problems attendant with the storage of an invalid physical address. The present invention meets this need.